The development of stochastic computational models is becoming increasingly important in many areas of engineering, finance, medicine, economics, social and physical sciences. Very often, the overall structure of such computational models can be obtained from first principles by using our understanding and insight into the physical system that is being modeled. For example, a computational model for programmed cell death or apoptosis may include a number of biochemical reactions that have been studied in the scientific literature on apoptosis. A model for stability control in a car may be obtained from the engineering design of the vehicle.
However, several components of a stochastic computational model are not readily obtained from first principles. Very often, model designers incorporate such information in the computational model as parameters. Stochastic computational model parameters are variables in the model, whose values do not change during the model simulation. The model designer chooses these parameter values carefully so that the computational model replicates the behavior of the physical system being modeled.
As the size of a stochastic computational model grows, the number of parameters used to describe the model also increases. The model designer chooses the values of all these parameters before the model can be simulated. The problem is further aggravated by the fact that the number of possible values of these parameters is exponential in the number of parameters themselves. Hence, the designer is faced with the daunting chance of choosing a parameter value from a very large number of possible parameter values, referred to as the problem of parameter space explosion. It is very difficult for her to manually explore the exponentially large space of parameter values.
Model designers often use “thumb rule” assumptions obtained by years of experience in developing stochastic computational models to synthesize the values of model parameters. These assumptions are often not based on a sound mathematical framework, but are merely heuristic simplifications that make the parameter synthesis problem tractable. However, the result of such heuristic parameter synthesis based on “thumb rules” is not complete. A complete parameter synthesis system finds a parameter value if one exists. A model designer using such a heuristic approach can never prove that a given model is fundamentally flawed, and no choice of parameter values can enable the computational model to satisfy the behavioral observations obtained from the system being modeled. The ability to generate such a proof is fundamental to the process of model development where inaccurate models are identified rapidly. Another simplification often used by model designers is to perform local sensitivity analysis of the parameters of the model. Local sensitivity analysis does not provide much information about the global behavior of the model. On the other hand, global sensitivity is difficult to compute even for moderate size computational models.
The correct value of parameters for a computational model can be obtained by exhaustively enumerating all the possible values of the parameters in the model. As the number of parameter values is exponential in the number of parameters, this approach is infeasible.
TOKEN, T. and CAREY, D. M. (2005) System for estimating model parameters, U.S. Patent Application Publication No. 2005/0091294, discloses a system for estimating a set of mathematical model parameters. In this system, the design consists of a sensor configured to produce data and a control circuit that produces at least one parameter. The control circuit estimates the set of mathematical model parameters based on an updated data matrix. The system is an online parameter estimation system and does not scale to massively parallel computing platforms and hundreds of parameters.
Calvin J. Bittner, E. J. V., James P. Hoffmann, C. V., and Josef S. Watts, S. B. V. (2001) Method of determining model parameters for a Metal-Oxide-Semiconductor Field-Effect Transistor (MOSFET) compact model using a stochastic search algorithm, U.S. Pat. No. 6,314,390 discloses a method of determining a set of parameters for modeling an active semiconductor device, for example, MOSFETs. The system uses genetic evolution of fitness vectors to determine a suitable choice of parameter values. Vectors of best fitness are selected and at least one genetic operator is applied to create new vectors. The process is repeated until a satisfactory set of parameters is obtained.
“Synthesis and infeasibility analysis for stochastic models of biochemical systems using statistical model checking and abstraction refinement” (Sumit Kumar Jha and Christopher James Langmead) discloses a system for automatically synthesizing the set of all kinetic parameters such that a given biochemical model satisfies a given high-level behavioral specification. The system integrates statistical model checking with abstraction refinement, and can also report the infeasibility of the model if no such combination of parameters exists. The system has been used to synthesize as many as 11 parameters of a biochemical model as it potentially needs to explore an exponential number of parameter values.
Accordingly, what is desired, and not heretofore been developed, is a stochastic computational model parameter synthesis system that can synthesize parameter values of a stochastic model that enable the model to satisfy a given behavioral specification, wherein randomized projections of the parameter space are built in a distributed manner and only a polynomial number of parameter values are explored before the system stops.